/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package sysprojectmg.horasproduccion.dao;

import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.SQLException;
import java.util.ArrayList;
import sysprojectmg.conexion.ConectaDB;
import sysprojectmg.horasproduccion.be.BeanMiembro;

/**
 *
 * @author Metis Gaia 2010-02
 */
public class HorasProduccionDAO {

    public boolean actualizarHoras(ArrayList<BeanMiembro> listaProd, int idProyecto, int idsemana) throws SQLException {
        boolean actualizacionCompleta = false;
        int rs = 0;
        int contador = 0;
        CallableStatement call = null;
        Connection conn = null;
        try {
            for (int i = 0; i < listaProd.size(); i++) {
                conn = new ConectaDB().getAcceso();
                String store = "UPDATE usuarioxrolxproyecto "
                        +"SET horas = ? "
                        +"WHERE usuarioxrolxproyecto.idusuario = ? "
                        +"AND usuarioxrolxproyecto.idproyecto = ? "
                        +"AND usuarioxrolxproyecto.idsemana = ? ";
                call = conn.prepareCall(store);
                call.setInt(1, listaProd.get(i).getHorasSemana());
                call.setInt(2, listaProd.get(i).getIdMiembro());
                call.setInt(3, idProyecto);
                call.setInt(4, idsemana);
                rs = call.executeUpdate();
                if (rs != 0) {
                    contador++;
                }
            }
            if (listaProd.size() == contador){
                actualizacionCompleta = true;
            }

        } catch (Exception e) {
            System.out.println(e);
        } finally {
            if (call != null) {
                call.close();
            }
            if (conn != null) {
                conn.close();
            }
        }
        return actualizacionCompleta;
    }

    public boolean generarSemanaSgt(int semanaActual) {
        boolean exito = false;
        CallableStatement call = null;
        Connection conn = null;
        
        
        
        return exito;
    }
}
